home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 2002 November / SGI Freeware 2002 November - Disc 2.iso / dist / fw_groff.idb / usr / freeware / bin / gnroff.z / gnroff
Text File  |  2002-04-08  |  2KB  |  97 lines

  1. #!/bin/sh
  2. # Emulate nroff with groff.
  3.  
  4. prog="$0"
  5. # Default device.
  6. # First try the "locale charmap" command, because it's most reliable.
  7. # On systems where it doesn't exist, look at the environment variables.
  8. case "`locale charmap 2>/dev/null`" in
  9.   UTF-8)
  10.     T=-Tutf8 ;;
  11.   ISO-8859-1)
  12.     T=-Tlatin1 ;;
  13.   IBM-1047)
  14.     T=-Tcp1047 ;;
  15.   *)
  16.     case "${LC_ALL-${LC_CTYPE-${LANG}}}" in
  17.       *.UTF-8)
  18.         T=-Tutf8 ;;
  19.       iso_8859_1 | *.ISO-8859-1)
  20.         T=-Tlatin1 ;;
  21.       *.IBM-1047)
  22.         T=-Tcp1047 ;;
  23.       *)
  24.         case "$LESSCHARSET" in
  25.           utf-8)
  26.             T=-Tutf8 ;;
  27.           latin1)
  28.             T=-Tlatin1 ;;
  29.           cp1047)
  30.             T=-Tcp1047 ;;
  31.           *)
  32.             T=-Tascii ;;
  33.           esac ;;
  34.      esac ;;
  35. esac
  36. opts=
  37. safer=-S
  38.  
  39. # `for i; do' doesn't work with some versions of sh
  40.  
  41. for i
  42.   do
  43.   case $1 in
  44.     -h)
  45.       opts="$opts -P-h" ;;
  46.     -[eq] | -s*)
  47.       # ignore these options
  48.       ;;
  49.     -[mrnoT])
  50.       echo "$prog: option $1 requires an argument" >&2
  51.       exit 1 ;;
  52.     -[ipt] | -[mrno]*)
  53.       opts="$opts $1" ;;
  54.     -Tascii | -Tlatin1 | -Tutf8 | -Tcp1047)
  55.       T=$1 ;;
  56.     -T*)
  57.       # ignore other devices
  58.       ;;
  59.     -S)
  60.       # safer behaviour
  61.       safer=-S ;;
  62.     -U)
  63.       # unsafe behaviour
  64.       safer=-U ;;
  65.     -u*)
  66.       # Solaris 2.2 `man' uses -u0; ignore it,
  67.       # since `less' and `more' can use the emboldening info.
  68.       ;;
  69.     -v | --version)
  70.       echo "GNU nroff (groff) version 1.17.2"
  71.       exit 0 ;;
  72.     --help)
  73.       echo "usage: nroff [-h] [-i] [-mNAME] [-nNUM] [-oLIST] [-p] [-rCN] [-t] [-Tname] [FILE...]"
  74.       exit 0 ;;
  75.     --)
  76.       shift
  77.       break ;;
  78.     -)
  79.       break ;;
  80.     -*)
  81.       echo "$prog: invalid option $1" >&2
  82.       exit 1 ;;
  83.     *)
  84.       break ;;
  85.   esac
  86.   shift
  87. done
  88.  
  89. # This shell script is intended for use with man, so warnings are
  90. # probably not wanted.  Also load nroff-style character definitions.
  91.  
  92. : ${GROFF_BIN_PATH=/usr/freeware/bin}
  93. export GROFF_BIN_PATH
  94. PATH=$GROFF_BIN_PATH:$PATH groff $safer -Wall -mtty-char $T $opts ${1+"$@"}
  95.  
  96. # eof
  97.